package spittr.confg;

import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;

public class SpittrWebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer{

	@Override
	protected Class<?>[] getRootConfigClasses() {
		/*
		 * 返回带有@Configuration注解的类将会用来配置ContextLoaderListener创建的应用上下文中的bean。
		 * 
		 * ContextLoaderListener一般加载驱动应用后端的中间层和数据层的组件。
		 */
		return new Class<?>[] {RootConfig.class};
	}

	@Override
	protected Class<?>[] getServletConfigClasses() {
		/*
		 * 我们要求DispatcherServlet加载应用上下文时，使用定义在WebConfig配置类中的bean。 
		 * 
		 * 创建DIspatcherServlet应用上下文的bean，一般为控制器、视图解析器以及处理器映射
		 */
		return new Class<?>[] {WebConfig.class};
	}

	@Override
	protected String[] getServletMappings() {
		/*
		 * 将一个或多个路径映射到DispatcherServlet上。
		 * 在下面的例子中，它的映射是“/”,这表示它会是应用的默认Servlet。它会处理进入应用的所有请求
		 * 
		 */
		return new String[]{"/"};
	}

}
